import java.util.Scanner;

public class DAY0516 {
//    public static void main(String[] args) {
//        String x = "fmn";
//        x.toUpperCase();
//        String y = x.replace('f','F');
//        y = y +"wxy";
//        System.out.println(y);
//    }

    public static void main(String[] args) {
        //使用动态规划
        Scanner sc = new Scanner(System.in);
        int row = sc.nextInt();//行
        int col = sc.nextInt();//列

        //动态规划 初始位置：0，0
        int[][] nums = new int[row+1][col+1];
        nums[0][0]=1;//从初始位置到达初始位置有1种走法

        for (int i = 0; i < row+1; i++) {
            for (int j = 0; j < col+1; j++) {
                if (i==0 && j>0){
                    nums[i][j]=nums[i][j-1];
                } else if (i>0 &&j==0) {
                    nums[i][j]=nums[i-1][j];
                }else if (i>0&&j>0){
                    nums[i][j]=nums[i][j-1]+ nums[i-1][j];
                }
            }
        }
        System.out.println(nums[row][col]);
    }
}
